// 分类相关数据的ts类型
// 公共ts类型
export interface ResponseData {
  code: number,
  message: string,
  ok: string
}

// 分类ts类型
export interface CategoryObj {
  id: number | string, //联合类型
  name: string,
  category1Id?: number, //?可有可无
  category2Id?: number, //?可有可无
}

// 分类接口返回数据类型
export interface CategoryResponseData extends ResponseData {
  data: CategoryObj[] //分类对象数组
}

// 属性名称、属性值名称的ts类型
// 属性值对象的ts类型
export interface AttrValue {
  id?: number,
  valueName: string,
  attrId?: number, //属性值归属于哪个属性
  flag?:boolean
}
// 存储每个属性值的数组类型
export type AttrValueList = AttrValue[] //数组里面放置多个属性值对象
// 属性对象的ts类型
export interface Attr {
  id?: number,
  attrName: string,
  categoryId: number|string,
  categoryLevel: number,
  attrValueList: AttrValueList //属性对象里面包含属性值数组
}
// 存储每个属性对象的数组类型
export type AttrList = Attr[]
// 属性接口返回数据的ts类型
export interface AttrResponseData extends ResponseData {
  data: Attr[]
}